import type { GeneratedEtsLibFile } from "../../types/generated";

export const FILE: GeneratedEtsLibFile = {
  path: 'ets/api/@ohos.multimedia.drm.d.ts',
  content: "/*\n* Copyright (C) 2023 Huawei Device Co., Ltd.\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n/**\n * @file Defines the DRM capability.\n * @kit DrmKit\n */\n/**\n * This module provides the DRM capability to multimedia player.\n * @namespace drm\n * @syscap SystemCapability.Multimedia.Drm.Core\n * @since 11\n */\n/**\n * This module provides the DRM capability to multimedia player.\n * @namespace drm\n * @syscap SystemCapability.Multimedia.Drm.Core\n * @atomicservice\n * @since 12\n */\ndeclare namespace drm {\n    /**\n     * Enumerates drm error code.\n     * @enum { number }\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @since 11\n     */\n    /**\n     * Enumerates drm error code.\n     * @enum { number }\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @atomicservice\n     * @since 14\n     */\n    enum DrmErrorCode {\n        /**\n         * All unknown errors.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * All unknown errors.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        ERROR_UNKNOWN = 24700101,\n        /**\n         * Meet max MediaKeySystem num limit.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Meet max MediaKeySystem num limit.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        MAX_SYSTEM_NUM_REACHED = 24700103,\n        /**\n         * Meet max MediaKeySession num limit.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Meet max MediaKeySession num limit.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        MAX_SESSION_NUM_REACHED = 24700104,\n        /**\n         * Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        SERVICE_FATAL_ERROR = 24700201\n    }\n    /**\n     * Enumerates which config name we can get.\n     * @enum { string }\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @since 11\n     */\n    /**\n     * Enumerates which config name we can get.\n     * @enum { string }\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @atomicservice\n     * @since 14\n     */\n    enum PreDefinedConfigName {\n        /**\n         * Config name vendor\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Config name vendor\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        CONFIG_DEVICE_VENDOR = 'vendor',\n        /**\n         * Config name version\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Config name version\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        CONFIG_DEVICE_VERSION = 'version',\n        /**\n         * Config name description\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Config name description\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        CONFIG_DEVICE_DESCRIPTION = 'description',\n        /**\n         * Config name algorithms\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Config name algorithms\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        CONFIG_DEVICE_ALGORITHMS = 'algorithms',\n        /**\n         * Config name deviceUniqueId\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Config name deviceUniqueId\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        CONFIG_DEVICE_UNIQUE_ID = 'deviceUniqueId',\n        /**\n         * Config name maxSessionNum\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Config name maxSessionNum\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        CONFIG_SESSION_MAX = 'maxSessionNum',\n        /**\n         * Config name currentSessionNum\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n     * Config name currentSessionNum\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @atomicservice\n     * @since 14\n     */\n        CONFIG_SESSION_CURRENT = 'currentSessionNum'\n    }\n    /**\n     * Enumerates media key type.\n     * @enum { number }\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @since 11\n     */\n    /**\n     * Enumerates media key type.\n     * @enum { number }\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @atomicservice\n     * @since 14\n     */\n    enum MediaKeyType {\n        /**\n         * Offline media key type.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Offline media key type.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        MEDIA_KEY_TYPE_OFFLINE = 0,\n        /**\n         * Online media key type.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Online media key type.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        MEDIA_KEY_TYPE_ONLINE\n    }\n    /**\n     * Enumerates offline media key status.\n     * @enum { number }\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @since 11\n     */\n    /**\n     * Enumerates offline media key status.\n     * @enum { number }\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @atomicservice\n     * @since 14\n     */\n    enum OfflineMediaKeyStatus {\n        /**\n         * Offline media key status unknown.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Offline media key status unknown.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        OFFLINE_MEDIA_KEY_STATUS_UNKNOWN = 0,\n        /**\n         * Offline media key status usable.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Offline media key status usable.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        OFFLINE_MEDIA_KEY_STATUS_USABLE = 1,\n        /**\n         * Offline media key status inactive.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Offline media key status inactive.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        OFFLINE_MEDIA_KEY_STATUS_INACTIVE = 2\n    }\n    /**\n     * Enumerates certificate status.\n     * @enum { number }\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @since 11\n     */\n    /**\n     * Enumerates certificate status.\n     * @enum { number }\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @atomicservice\n     * @since 14\n     */\n    enum CertificateStatus {\n        /**\n         * Device already provisioned.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Device already provisioned.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        CERT_STATUS_PROVISIONED = 0,\n        /**\n         * Device not provisioned.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Device not provisioned.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        CERT_STATUS_NOT_PROVISIONED,\n        /**\n         * Cert already expired.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Cert already expired.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        CERT_STATUS_EXPIRED,\n        /**\n         * Certs are invalid.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Certs are invalid.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        CERT_STATUS_INVALID,\n        /**\n         * Get certs status failed.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Get certs status failed.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        CERT_STATUS_UNAVAILABLE\n    }\n    /**\n     * Enumerates media key request types.\n     * @enum { number }\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @since 11\n     */\n    /**\n     * Enumerates media key request types.\n     * @enum { number }\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @atomicservice\n     * @since 12\n     */\n    enum MediaKeyRequestType {\n        /**\n         * Media key request type unknown.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Media key request type unknown.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        MEDIA_KEY_REQUEST_TYPE_UNKNOWN = 0,\n        /**\n         * Media key request type initial.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Media key request type initial.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        MEDIA_KEY_REQUEST_TYPE_INITIAL = 1,\n        /**\n         * Media key request type renewal.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Media key request type renewal.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        MEDIA_KEY_REQUEST_TYPE_RENEWAL = 2,\n        /**\n         * Media key request type release.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Media key request type release.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        MEDIA_KEY_REQUEST_TYPE_RELEASE = 3,\n        /**\n         * Media key request type none.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Media key request type none.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        MEDIA_KEY_REQUEST_TYPE_NONE = 4,\n        /**\n         * Media key request type update.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Media key request type update.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        MEDIA_KEY_REQUEST_TYPE_UPDATE = 5\n    }\n    /**\n     * Enumerates content protection level.\n     * @enum { number }\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @since 11\n     */\n    /**\n     * Enumerates content protection level.\n     * @enum { number }\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @atomicservice\n     * @since 12\n     */\n    enum ContentProtectionLevel {\n        /**\n         * Device decrypt and decode type unknown.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Device decrypt and decode type unknown.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        CONTENT_PROTECTION_LEVEL_UNKNOWN = 0,\n        /**\n         * Device using software level.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Device using software level.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        CONTENT_PROTECTION_LEVEL_SW_CRYPTO,\n        /**\n         * Device using hardware level.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Device using hardware level.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        CONTENT_PROTECTION_LEVEL_HW_CRYPTO,\n        /**\n         * Device using enhanced hardware level.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Device using enhanced hardware level.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        CONTENT_PROTECTION_LEVEL_ENHANCED_HW,\n        /**\n         * Max mode.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Max mode.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        CONTENT_PROTECTION_LEVEL_MAX\n    }\n    /**\n     * Provides the drm provision request definitions.\n     * @interface ProvisionRequest\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @since 11\n     */\n    /**\n   * Provides the drm provision request definitions.\n   * @interface ProvisionRequest\n   * @syscap SystemCapability.Multimedia.Drm.Core\n   * @atomicservice\n   * @since 14\n   */\n    interface ProvisionRequest {\n        /**\n         * Provision request data sent to provision server.\n         * @type { Uint8Array }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Provision request data sent to provision server.\n         * @type { Uint8Array }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        data: Uint8Array;\n        /**\n         * Provision server URL.\n         * @type { string }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Provision server URL.\n         * @type { string }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        defaultURL: string;\n    }\n    /**\n     * Provides the drm media key request info optional data.\n     * @interface OptionsData\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @since 11\n     */\n    /**\n     * Provides the drm media key request info optional data.\n     * @interface OptionsData\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @atomicservice\n     * @since 12\n     */\n    interface OptionsData {\n        /**\n         * App defined optional data name.\n         * @type { string }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * App defined optional data name.\n         * @type { string }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        name: string;\n        /**\n         * App defined optional data value.\n         * @type { string }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * App defined optional data value.\n         * @type { string }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        value: string;\n    }\n    /**\n     * Provides the drm media key request definitions.\n     * @interface MediaKeyRequest\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @since 11\n     */\n    /**\n     * Provides the drm media key request definitions.\n     * @interface MediaKeyRequest\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @atomicservice\n     * @since 12\n     */\n    interface MediaKeyRequest {\n        /**\n         * Media key request type.\n         * @type { MediaKeyRequestType }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Media key request type.\n         * @type { MediaKeyRequestType }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        mediaKeyRequestType: MediaKeyRequestType;\n        /**\n         * Media key request data sent to media key server.\n         * @type { Uint8Array }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Media key request data sent to media key server.\n         * @type { Uint8Array }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        data: Uint8Array;\n        /**\n         * Media key server URL.\n         * @type { string }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Media key server URL.\n         * @type { string }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        defaultURL: string;\n    }\n    /**\n     * Used to indicates the event info attached to specific event type.\n     * @interface EventInfo\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @since 11\n     */\n    /**\n     * Used to indicates the event info attached to specific event type.\n     * @interface EventInfo\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @atomicservice\n     * @since 12\n     */\n    interface EventInfo {\n        /**\n         * Event info.\n         * @type { Uint8Array }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Event info.\n         * @type { Uint8Array }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        info: Uint8Array;\n        /**\n         * Event extra info.\n         * @type { string }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Event extra info.\n         * @type { string }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        extraInfo: string;\n    }\n    /**\n     * Used to indicates the statistic info.\n     * @interface StatisticKeyValue\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @since 11\n     */\n    /**\n     * Used to indicates the statistic info.\n     * @interface StatisticKeyValue\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @atomicservice\n     * @since 14\n     */\n    interface StatisticKeyValue {\n        /**\n         * Statistic info name.\n         * @type { string }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Statistic info name.\n         * @type { string }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        name: string;\n        /**\n         * Statistic info value.\n         * @type { string }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Statistic info value.\n         * @type { string }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        value: string;\n    }\n    /**\n     * Used to indicates the media key status.\n     * @interface MediaKeyStatus\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @since 11\n     */\n    /**\n     * Used to indicates the media key status.\n     * @interface MediaKeyStatus\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @atomicservice\n     * @since 12\n     */\n    interface MediaKeyStatus {\n        /**\n         * Media key Id in string.\n         * @type { string }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Media key Id in string.\n         * @type { string }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        name: string;\n        /**\n         * Media key status description.\n         * @type { string }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Media key status description.\n         * @type { string }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        value: string;\n    }\n    /**\n     * Used to indicates the media key status with a key and its value.\n     * @interface KeysInfo\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @since 11\n     */\n    /**\n     * Used to indicates the media key status with a key and its value.\n     * @interface KeysInfo\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @atomicservice\n     * @since 12\n     */\n    interface KeysInfo {\n        /**\n         * Keys Id in media key.\n         * @type { Uint8Array }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Keys Id in media key.\n         * @type { Uint8Array }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        keyId: Uint8Array;\n        /**\n         * Keys status description.\n         * @type { string }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Keys status description.\n         * @type { string }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        value: string;\n    }\n    /**\n     * Used to indicates the media key system info of media source.\n     * @interface MediaKeySystemInfo\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @since 11\n     */\n    /**\n     * Used to indicates the media key system info of media source.\n     * @interface MediaKeySystemInfo\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @atomicservice\n     * @since 12\n     */\n    interface MediaKeySystemInfo {\n        /**\n         * Drm system ID.\n         * @type { string }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Drm system ID.\n         * @type { string }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        uuid: string;\n        /**\n         * PSSH(protection scheme specific header) contain drm info.\n         * @type { Uint8Array }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * PSSH(protection scheme specific header) contain drm info.\n         * @type { Uint8Array }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        pssh: Uint8Array;\n    }\n    /**\n       * Name and UUID of DRM plugin.\n       * @interface MediaKeySystemDescription\n       * @syscap SystemCapability.Multimedia.Drm.Core\n       * @since 12\n       */\n    /**\n       * Name and UUID of DRM plugin.\n       * @interface MediaKeySystemDescription\n       * @syscap SystemCapability.Multimedia.Drm.Core\n       * @atomicservice\n       * @since 14\n       */\n    interface MediaKeySystemDescription {\n        /**\n         * Name of DRM plugin.\n         * @type { string }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 12\n         */\n        /**\n         * Name of DRM plugin.\n         * @type { string }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        name: string;\n        /**\n         * UUID supported by DRM plugin.\n         * @type { string }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 12\n         */\n        /**\n         * UUID supported by DRM plugin.\n         * @type { string }\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        uuid: string;\n    }\n    /**\n     * Get a MediaKeySystem's UUID.\n     * @param { string } name - The Digital Right Management solution name.\n     * @returns { string } The MediaKeySystem uuid.\n     * @throws { BusinessError } 401 - The parameter check failed.Possibly because:\n     * <br>1.Mandatory parameters are left unspecified. 2.Parameter verification failed.\n     * @throws { BusinessError } 24700101 - All unknown errors.\n     * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @since 12\n     */\n    /**\n     * Get a MediaKeySystem's UUID.\n     * @param { string } name - The Digital Right Management solution name.\n     * @returns { string } The MediaKeySystem uuid.\n     * @throws { BusinessError } 401 - The parameter check failed.Possibly because:\n     * <br>1.Mandatory parameters are left unspecified. 2.Parameter verification failed.\n     * @throws { BusinessError } 24700101 - All unknown errors.\n     * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @atomicservice\n     * @since 14\n     */\n    function getMediaKeySystemUuid(name: string): string;\n    /**\n     * Get all media key systems supported.\n     * @returns { MediaKeySystemDescription[] } The MediaKeySystem name and uuid info list.\n     * @throws { BusinessError } 24700101 - All unknown errors.\n     * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @since 12\n     */\n    /**\n     * Get all media key systems supported.\n     * @returns { MediaKeySystemDescription[] } The MediaKeySystem name and uuid info list.\n     * @throws { BusinessError } 24700101 - All unknown errors.\n     * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @atomicservice\n     * @since 14\n     */\n    function getMediaKeySystems(): MediaKeySystemDescription[];\n    /**\n     * Creates a MediaKeySystem instance.\n     * @param { string } name - Used to point a Digital Right Management solution.\n     * @returns { MediaKeySystem } The MediaKeySystem instance.\n     * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n     * 1.Mandatory parameters are left unspecified. 2.Parameter verification failed.\n     * @throws { BusinessError } 24700101 - All unknown errors.\n     * @throws { BusinessError } 24700103 - Meet max MediaKeySystem num limit.\n     * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @since 11\n     */\n    /**\n     * Creates a MediaKeySystem instance.\n     * @param { string } name - Used to point a Digital Right Management solution.\n     * @returns { MediaKeySystem } The MediaKeySystem instance.\n     * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n     * 1.Mandatory parameters are left unspecified. 2.Parameter verification failed.\n     * @throws { BusinessError } 24700101 - All unknown errors.\n     * @throws { BusinessError } 24700103 - Meet max MediaKeySystem num limit.\n     * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @atomicservice\n     * @since 14\n     */\n    function createMediaKeySystem(name: string): MediaKeySystem;\n    /**\n     * Judge whether a system that specifies name, mimetype and content protection level is supported.\n     * @param { string } name - Used to point a Digital Right Management solution.\n     * @param { string } mimeType - Used to specifies the media type.\n     * @param { ContentProtectionLevel } level - Used to specifies the ContentProtectionLevel.\n     * @returns { boolean } Whether these conditions will be met.\n     * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n     * 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * 3.Parameter verification failed.\n     * @throws { BusinessError } 24700101 - All unknown errors.\n     * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @since 11\n     */\n    /**\n     * Judge whether a system that specifies name, mimetype and content protection level is supported.\n     * @param { string } name - Used to point a Digital Right Management solution.\n     * @param { string } mimeType - Used to specifies the media type.\n     * @param { ContentProtectionLevel } level - Used to specifies the ContentProtectionLevel.\n     * @returns { boolean } Whether these conditions will be met.\n     * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n     * 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * 3.Parameter verification failed.\n     * @throws { BusinessError } 24700101 - All unknown errors.\n     * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @atomicservice\n     * @since 14\n     */\n    function isMediaKeySystemSupported(name: string, mimeType: string, level: ContentProtectionLevel): boolean;\n    /**\n     * Judge whether a system that specifies name, mimetype is supported.\n     * @param { string } name - Used to point a Digital Right Management solution.\n     * @param { string } mimeType - Used to specifies the media type.\n     * @returns { boolean } Whether these conditions will be met.\n     * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n     * 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * 3.Parameter verification failed.\n     * @throws { BusinessError } 24700101 - All unknown errors.\n     * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @since 11\n     */\n    /**\n     * Judge whether a system that specifies name, mimetype is supported.\n     * @param { string } name - Used to point a Digital Right Management solution.\n     * @param { string } mimeType - Used to specifies the media type.\n     * @returns { boolean } Whether these conditions will be met.\n     * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n     * 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * 3.Parameter verification failed.\n     * @throws { BusinessError } 24700101 - All unknown errors.\n     * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @atomicservice\n     * @since 14\n     */\n    function isMediaKeySystemSupported(name: string, mimeType: string): boolean;\n    /**\n     * Judge whether a system that specifies name is supported.\n     * @param { string } name - Used to point a Digital Right Management solution.\n     * @returns { boolean } Whether these conditions will be met.\n     * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n     * 1.Mandatory parameters are left unspecified. 2.Parameter verification failed,\n     * the param name's length is zero or too big(exceeds 4096 Bytes).\n     * @throws { BusinessError } 24700101 - All unknown errors.\n     * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @since 11\n     */\n    /**\n     * Judge whether a system that specifies name is supported.\n     * @param { string } name - Used to point a Digital Right Management solution.\n     * @returns { boolean } Whether these conditions will be met.\n     * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n     * 1.Mandatory parameters are left unspecified. 2.Parameter verification failed,\n     * the param name's length is zero or too big(exceeds 4096 Bytes).\n     * @throws { BusinessError } 24700101 - All unknown errors.\n     * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @atomicservice\n     * @since 14\n     */\n    function isMediaKeySystemSupported(name: string): boolean;\n    /**\n     * Manages and record MediaKeySessions. Before calling an MediaKeySystem method, we must use getMediaKeySystem\n     * to get a MediaKeySystem instance, then we can call functions.\n     * @interface MediaKeySystem\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @since 11\n     */\n    /**\n     * Manages and record MediaKeySessions. Before calling an MediaKeySystem method, we must use getMediaKeySystem\n     * to get a MediaKeySystem instance, then we can call functions.\n     * @interface MediaKeySystem\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @atomicservice\n     * @since 14\n     */\n    interface MediaKeySystem {\n        /**\n         * Get the specified configuration.\n         * @param { string } configName - Used to specify the config name.\n         * @returns { string } The config value string.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified. 2.Parameter verification failed,\n         * the param's length is zero or too big(exceeds 4096 Bytes).\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Get the specified configuration.\n         * @param { string } configName - Used to specify the config name.\n         * @returns { string } The config value string.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified. 2.Parameter verification failed,\n         * the param's length is zero or too big(exceeds 4096 Bytes).\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        getConfigurationString(configName: string): string;\n        /**\n         * Set the specified configuration.\n         * @param { string } configName - Used to specify the config name.\n         * @param { string } value - The value to be set.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Set the specified configuration.\n         * @param { string } configName - Used to specify the config name.\n         * @param { string } value - The value to be set.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        setConfigurationString(configName: string, value: string): void;\n        /**\n         * Get the specified configuration.\n         * @param { string } configName - Used to specify the config name.\n         * @returns { Uint8Array } The config value.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified. 2.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Get the specified configuration.\n         * @param { string } configName - Used to specify the config name.\n         * @returns { Uint8Array } The config value.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified. 2.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        getConfigurationByteArray(configName: string): Uint8Array;\n        /**\n         * Set the specified configuration.\n         * @param { string } configName - Used to specify the config name.\n         * @param { Uint8Array } value - The value to be set.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Set the specified configuration.\n         * @param { string } configName - Used to specify the config name.\n         * @param { Uint8Array } value - The value to be set.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        setConfigurationByteArray(configName: string, value: Uint8Array): void;\n        /**\n         * Get performance statistics information.That includes currentSessionNum, version, decryptNumber,\n         * and errorDecryptNumber.\n         * @returns { StatisticKeyValue[] } A list that includes performance index and corresponding statistics.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Get performance statistics information.That includes currentSessionNum, version, decryptNumber,\n         * and errorDecryptNumber.\n         * @returns { StatisticKeyValue[] } A list that includes performance index and corresponding statistics.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        getStatistics(): StatisticKeyValue[];\n        /**\n         * Get max content protection level the device supports.\n         * @returns { ContentProtectionLevel } The max content protection level of the MediaKeySystem instance.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Get max content protection level the device supports.\n         * @returns { ContentProtectionLevel } The max content protection level of the MediaKeySystem instance.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        getMaxContentProtectionLevel(): ContentProtectionLevel;\n        /**\n         * Generate a media key system provision request.\n         * @returns { Promise<ProvisionRequest> } Promise with ProvisionRequest used to return the result.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Generate a media key system provision request.\n         * @returns { Promise<ProvisionRequest> } Promise with ProvisionRequest used to return the result.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        generateKeySystemRequest(): Promise<ProvisionRequest>;\n        /**\n         * Process the response corresponding the key system request obtained by the application.\n         * @param { Uint8Array } response - Response corresponding to the request.\n         * @returns { Promise<void> } Promise used to return the result.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Process the response corresponding the key system request obtained by the application.\n         * @param { Uint8Array } response - Response corresponding to the request.\n         * @returns { Promise<void> } Promise used to return the result.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        processKeySystemResponse(response: Uint8Array): Promise<void>;\n        /**\n         * Get certificate status of the MediaKeySystem.\n         * @returns { CertificateStatus } Certificate Status of the MediaKeySystem instance.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Get certificate status of the MediaKeySystem.\n         * @returns { CertificateStatus } Certificate Status of the MediaKeySystem instance.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        getCertificateStatus(): CertificateStatus;\n        /**\n         * Register keySystemRequired events.\n         * @param { 'keySystemRequired' } type - Type of the drm event to listen for.\n         * @param { function } callback - Used to listen for the key system required event.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Register keySystemRequired events.\n         * @param { 'keySystemRequired' } type - Type of the drm event to listen for.\n         * @param { function } callback - Used to listen for the key system required event.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        on(type: 'keySystemRequired', callback: (eventInfo: EventInfo) => void): void;\n        /**\n         * Unregister keySystemRequired events.\n         * @param { 'keySystemRequired' } type - Type of the drm event to listen for.\n         * @param { function } callback - Used to listen for the key system required event.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Unregister keySystemRequired events.\n         * @param { 'keySystemRequired' } type - Type of the drm event to listen for.\n         * @param { function } callback - Used to listen for the key system required event.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        off(type: 'keySystemRequired', callback?: (eventInfo: EventInfo) => void): void;\n        /**\n         * Create a MediaKeySession instance with level.\n         * @param { ContentProtectionLevel } level - Used to specify the content protection level.\n         * @returns { MediaKeySession } A MediaKeySession instance.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified. 2.The param level exceeds reasonable range,\n         * please use value in ContentProtectionLevel.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700104 - Meet max MediaKeySession num limit.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Create a MediaKeySession instance with level.\n         * @param { ContentProtectionLevel } level - Used to specify the content protection level.\n         * @returns { MediaKeySession } A MediaKeySession instance.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified. 2.The param level exceeds reasonable range,\n         * please use value in ContentProtectionLevel.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700104 - Meet max MediaKeySession num limit.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        createMediaKeySession(level: ContentProtectionLevel): MediaKeySession;\n        /**\n         * Create a MediaKeySession instance.\n         * @returns { MediaKeySession } A MediaKeySession instance.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700104 - Meet max MediaKeySession num limit.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Create a MediaKeySession instance.\n         * @returns { MediaKeySession } A MediaKeySession instance.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700104 - Meet max MediaKeySession num limit.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        createMediaKeySession(): MediaKeySession;\n        /**\n         * Get the list of offline MediaKeyIds.\n         * @returns { Uint8Array[] } The list of offline MediaKeyIds.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Get the list of offline MediaKeyIds.\n         * @returns { Uint8Array[] } The list of offline MediaKeyIds.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        getOfflineMediaKeyIds(): Uint8Array[];\n        /**\n         * Get offline media key status corresponding to the mediaKeyId.\n         * @param { Uint8Array } mediaKeyId - The media key identifier.\n         * @returns { OfflineMediaKeyStatus } Offline media key Status.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Get offline media key status corresponding to the mediaKeyId.\n         * @param { Uint8Array } mediaKeyId - The media key identifier.\n         * @returns { OfflineMediaKeyStatus } Offline media key Status.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        getOfflineMediaKeyStatus(mediaKeyId: Uint8Array): OfflineMediaKeyStatus;\n        /**\n         * Remove media key corresponding to the mediaKeyId.\n         * @param { Uint8Array } mediaKeyId - The mediaKeyId specifies which media key should be clear.\n         * @throws { BusinessError } 401 - The parameter check failed.Possibly because:\n         * 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Remove media key corresponding to the mediaKeyId.\n         * @param { Uint8Array } mediaKeyId - The mediaKeyId specifies which media key should be clear.\n         * @throws { BusinessError } 401 - The parameter check failed.Possibly because:\n         * 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        clearOfflineMediaKeys(mediaKeyId: Uint8Array): void;\n        /**\n         * Release the resource before the MediaKeySystem gonna be unused.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Release the resource before the MediaKeySystem gonna be unused.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 14\n         */\n        destroy(): void;\n    }\n    /**\n     * Provide functions and keep a decrypt module. Before calling an MediaKeySession method, we must\n     * use MediaKeySystem's createMediaKeySession to get a MediaKeySession instance.\n     * @interface MediaKeySession\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @since 11\n     */\n    /**\n     * Provide functions and keep a decrypt module. Before calling an MediaKeySession method, we must\n     * use MediaKeySystem's createMediaKeySession to get a MediaKeySession instance.\n     * @interface MediaKeySession\n     * @syscap SystemCapability.Multimedia.Drm.Core\n     * @atomicservice\n     * @since 12\n     */\n    interface MediaKeySession {\n        /**\n         * Generate the media key request.\n         * @param { string } mimeType - Media type.\n         * @param { Uint8Array } initData - PSSH info.\n         * @param { number } mediaKeyType - Offline or online.\n         * @param { OptionsData[] } options - Optional data the application set to drm framework.\n         * @returns { Promise<MediaKeyRequest> } Promise with MediaKeyRequest used to return the result.\n         * @throws { BusinessError } 401 -The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified or too many parameters. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Generate the media key request.\n         * @param { string } mimeType - Media type.\n         * @param { Uint8Array } initData - PSSH info.\n         * @param { number } mediaKeyType - Offline or online.\n         * @param { OptionsData[] } options - Optional data the application set to drm framework.\n         * @returns { Promise<MediaKeyRequest> } Promise with MediaKeyRequest used to return the result.\n         * @throws { BusinessError } 401 -The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified or too many parameters. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        generateMediaKeyRequest(mimeType: string, initData: Uint8Array, mediaKeyType: number, options?: OptionsData[]): Promise<MediaKeyRequest>;\n        /**\n         * Process the response corresponding to the media key request obtained by the application.\n         * @param { Uint8Array } response - The response.\n         * @returns { Promise<Uint8Array> } Promise with media key identifier in Uint8ARRY used to return the result.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Process the response corresponding to the media key request obtained by the application.\n         * @param { Uint8Array } response - The response.\n         * @returns { Promise<Uint8Array> } Promise with media key identifier in Uint8ARRY used to return the result.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        processMediaKeyResponse(response: Uint8Array): Promise<Uint8Array>;\n        /**\n         * Check the media key status\n         * @returns { MediaKeyStatus[] } A list of media key status description pairs.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Check the media key status\n         * @returns { MediaKeyStatus[] } A list of media key status description pairs.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        checkMediaKeyStatus(): MediaKeyStatus[];\n        /**\n         * Remove media key.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Remove media key.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        clearMediaKeys(): void;\n        /**\n         * Generate offline media key request.\n         * @param { Uint8Array } mediaKeyId - The mediaKeyId specifies which media content's media key request\n         * should be generated.\n         * @returns { Promise<Uint8Array> } Promise with media key request in Uint8Array used to return the result.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified or too many parameters. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Generate offline media key request.\n         * @param { Uint8Array } mediaKeyId - The mediaKeyId specifies which media content's media key request\n         * should be generated.\n         * @returns { Promise<Uint8Array> } Promise with media key request in Uint8Array used to return the result.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified or too many parameters. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        generateOfflineReleaseRequest(mediaKeyId: Uint8Array): Promise<Uint8Array>;\n        /**\n         * Process offline media key response.\n         * @param { Uint8Array } mediaKeyId - The mediaKeyId specifies which media content's media key it is.\n         * @param { Uint8Array } response - The offline media key.\n         * @returns { Promise<void> } Promise used to return the result.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified or too many parameters. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Process offline media key response.\n         * @param { Uint8Array } mediaKeyId - The mediaKeyId specifies which media content's media key it is.\n         * @param { Uint8Array } response - The offline media key.\n         * @returns { Promise<void> } Promise used to return the result.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified or too many parameters. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        processOfflineReleaseResponse(mediaKeyId: Uint8Array, response: Uint8Array): Promise<void>;\n        /**\n         * Restore offline media key.\n         * @param { Uint8Array } mediaKeyId - The mediaKeyId specifies which media key should be restore.\n         * @returns { Promise<void> } Promise used to return the result.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified or too many parameters. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Restore offline media key.\n         * @param { Uint8Array } mediaKeyId - The mediaKeyId specifies which media key should be restore.\n         * @returns { Promise<void> } Promise used to return the result.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified or too many parameters. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        restoreOfflineMediaKeys(mediaKeyId: Uint8Array): Promise<void>;\n        /**\n         * Get content protection level.\n         * @returns { ContentProtectionLevel } MediaKeySession content protection level.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Get content protection level.\n         * @returns { ContentProtectionLevel } MediaKeySession content protection level.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        getContentProtectionLevel(): ContentProtectionLevel;\n        /**\n         * Whether the encrypted content require a secure decoder or not.\n         * @param { string } mimeType - The media type.\n         * @returns { boolean } Whether secure decoder is required.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified or too many parameters. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Whether the encrypted content require a secure decoder or not.\n         * @param { string } mimeType - The media type.\n         * @returns { boolean } Whether secure decoder is required.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified or too many parameters. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        requireSecureDecoderModule(mimeType: string): boolean;\n        /**\n         * Register keyRequired event.\n         * @param { 'keyRequired' } type - Type of the drm event to listen for.\n         * @param { function } callback used to listen for the key required event.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified or too many parameters. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Register keyRequired event.\n         * @param { 'keyRequired' } type - Type of the drm event to listen for.\n         * @param { function } callback used to listen for the key required event.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified or too many parameters. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        on(type: 'keyRequired', callback: (eventInfo: EventInfo) => void): void;\n        /**\n         * Unregister keyRequired event.\n         * @param { 'keyRequired' } type - Type of the drm event to listen for.\n         * @param { function } callback used to listen for the key required event.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified or too many parameters. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Unregister keyRequired event.\n         * @param { 'keyRequired' } type - Type of the drm event to listen for.\n         * @param { function } callback used to listen for the key required event.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified or too many parameters. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        off(type: 'keyRequired', callback?: (eventInfo: EventInfo) => void): void;\n        /**\n         * Register keyExpired event.\n         * @param { 'keyExpired' } type - Type of the drm event to listen for.\n         * @param { function } callback - Used to listen for the key required event.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified or too many parameters. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Register keyExpired event.\n         * @param { 'keyExpired' } type - Type of the drm event to listen for.\n         * @param { function } callback - Used to listen for the key required event.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified or too many parameters. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        on(type: 'keyExpired', callback: (eventInfo: EventInfo) => void): void;\n        /**\n         * Unregister keyExpired event.\n         * @param { 'keyExpired' } type - Type of the drm event to listen for.\n         * @param { function } callback - Used to listen for the key required event.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified or too many parameters. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Unregister keyExpired event.\n         * @param { 'keyExpired' } type - Type of the drm event to listen for.\n         * @param { function } callback - Used to listen for the key required event.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified or too many parameters. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        off(type: 'keyExpired', callback?: (eventInfo: EventInfo) => void): void;\n        /**\n         * Register vendorDefined event.\n         * @param { 'vendorDefined' } type - Type of the drm event to listen for.\n         * @param { function } callback - Used to listen for the vendor defined event.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified or too many parameters. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Register vendorDefined event.\n         * @param { 'vendorDefined' } type - Type of the drm event to listen for.\n         * @param { function } callback - Used to listen for the vendor defined event.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified or too many parameters. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        on(type: 'vendorDefined', callback: (eventInfo: EventInfo) => void): void;\n        /**\n         * Unregister vendorDefined event.\n         * @param { 'vendorDefined' } type - Type of the drm event to listen for.\n         * @param { function } callback - Used to listen for the vendor defined event.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified or too many parameters. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Unregister vendorDefined event.\n         * @param { 'vendorDefined' } type - Type of the drm event to listen for.\n         * @param { function } callback - Used to listen for the vendor defined event.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified or too many parameters. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        off(type: 'vendorDefined', callback?: (eventInfo: EventInfo) => void): void;\n        /**\n         * Register expirationUpdate event.\n         * @param { 'expirationUpdate' } type - Type of the drm event to listen for.\n         * @param { function } callback - Used to listen for expiration update event.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified or too many parameters. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Register expirationUpdate event.\n         * @param { 'expirationUpdate' } type - Type of the drm event to listen for.\n         * @param { function } callback - Used to listen for expiration update event.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified or too many parameters. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        on(type: 'expirationUpdate', callback: (eventInfo: EventInfo) => void): void;\n        /**\n         * Unregister expirationUpdate event.\n         * @param { 'expirationUpdate' } type - Type of the drm event to listen for.\n         * @param { function } callback - Used to listen for expiration update event.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified or too many parameters. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Unregister expirationUpdate event.\n         * @param { 'expirationUpdate' } type - Type of the drm event to listen for.\n         * @param { function } callback - Used to listen for expiration update event.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified or too many parameters. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        off(type: 'expirationUpdate', callback?: (eventInfo: EventInfo) => void): void;\n        /**\n         * Register keysChange event.\n         * @param { 'keysChange' } type - Type of the drm event to listen for.\n         * @param { function } callback - Used to listen for keys change event.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified or too many parameters. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Register keysChange event.\n         * @param { 'keysChange' } type - Type of the drm event to listen for.\n         * @param { function } callback - Used to listen for keys change event.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified or too many parameters. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        on(type: 'keysChange', callback: (keyInfo: KeysInfo[], newKeyAvailable: boolean) => void): void;\n        /**\n         * Unregister keysChange event.\n         * @param { 'keysChange' } type - Type of the drm event to listen for.\n         * @param { function } callback - Used to listen for keys change event.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified or too many parameters. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Unregister keysChange event.\n         * @param { 'keysChange' } type - Type of the drm event to listen for.\n         * @param { function } callback - Used to listen for keys change event.\n         * @throws { BusinessError } 401 - The parameter check failed. Possibly because:\n         * 1.Mandatory parameters are left unspecified or too many parameters. 2.Incorrect parameter types.\n         * 3.Parameter verification failed.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        off(type: 'keysChange', callback?: (keyInfo: KeysInfo[], newKeyAvailable: boolean) => void): void;\n        /**\n         * Release the resource before the session gonna be unused.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @since 11\n         */\n        /**\n         * Release the resource before the session gonna be unused.\n         * @throws { BusinessError } 24700101 - All unknown errors.\n         * @throws { BusinessError } 24700201 - Fatal service error, for example, service died.\n         * @syscap SystemCapability.Multimedia.Drm.Core\n         * @atomicservice\n         * @since 12\n         */\n        destroy(): void;\n    }\n}\nexport default drm;\n",
}
export default FILE;